package hr_project.hr.dao.emp;


import java.util.List;

import org.apache.ibatis.annotations.Param;

import hr_project.hr.entity.EmpMove;
import hr_project.hr.entity.Empmove_result;
import hr_project.hr.util.QueryEmpMove;

public interface IEmpMoveDao {
	
	//增加
	public void addEmpMove(EmpMove emo);
	
	//修改
	public void modEmpMove(EmpMove emo);
	
	//根据id查找一个
	public EmpMove getById(long id);
	
	//根据审批人找到待审核的调度
	public List<EmpMove> getByCheck(long checkid); 
	
	//根据创建人查找
	public List<EmpMove> getByCreator(@Param("creaid")long creaid,@Param("page")int page,@Param("pageSize")int pageSize);
	
	public int getRowCountBylogid(@Param("logid")long logid);
	
	/**
	 * 根据原来的部门，原来的角色，
	 * 新部门，新角色，处理人，状态，
	 * 开始时间，结束时间查询
	 * 找到登录人的调度单
	 */
	//人事不定项+分页查找所有
	public List<EmpMove> getAll(@Param("query")QueryEmpMove query,@Param("page")int page,@Param("pageSize")int pageSize);
	//count
	public int getRowCount(@Param("query")QueryEmpMove query);
	

	//根据状态删除自己的申请：审核状态都为结束时
	public void delEmpMove(long id);
	
	//增加调度审核表结果
	public void addResult(@Param("ee")Empmove_result res);
	
	//申请离职
	public void addEmpMove_arrive(EmpMove emo);
	

	
}
